package com.guomei.bean.curse.domain;

import java.math.BigDecimal;
import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;

import lombok.Data;

/**
 * 分销记录表
 * 记录实际的分销金额和比例
 */
@Data
@TableName("distribute_records")
public class DistributeRecord {
    
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 学生ID（购买课程的用户）
     */
    private Long studentId;

    /**
     * 招生老师ID（分销员）
     */
    private Long distributorId;

    /**
     * 课程ID
     */
    private Long courseId;

    /**
     * 订单ID（关联支付订单）
     */
    private Long orderId;

    /**
     * 用户实际支付金额
     */
    private BigDecimal actualPayAmount;

    /**
     * 分销比例(%)
     */
    private BigDecimal distributionRatio;

    /**
     * 分销金额
     */
    private BigDecimal distributeAmount;

    /**
     * 分销状态(0-待结算,1-已结算,2-已取消)
     */
    private Short status;

    /**
     * 结算时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime settleTime;

    /**
     * 备注
     */
    private String remark;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime createdTime;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime updatedTime;
}
